package cn.xeblog.commons.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 游戏枚举
 *
 * @author anlingyi
 * @date 2020/8/17
 */
@Getter
@AllArgsConstructor
public enum Game {
    /**
     * 五子棋
     */
    GOBANG("五子棋", false),
    /**
     * 斗地主
     */
    LANDLORDS("斗地主", false),
    /**
     * 不贪吃蛇
     */
    NON_GLUTTONOUS_SNAKE("不贪吃蛇", false),
    /**
     * 2048
     */
    GAME_2048("2048", false),
    /**
     * 数独
     */
    SUDOKU("数独", false),
    /**
     * 推箱子
     */
    PUSH_BOX("推箱子", false),
    /**
     * 中国象棋
     */
    CHINESE_CHESS("中国象棋", false),

    /**
     * 中国象棋
     */
    CHINESE_CHESS2("中国象棋", false);

    /**
     * 游戏名称
     */
    private String name;

    /**
     * 是否必须要登录
     */
    private boolean requiredLogin;

    /**
     * 通过下标获取游戏枚举
     *
     * @param index 下标
     * @return 游戏枚举
     */
    public static Game getGame(int index) {
        Game[] games = values();
        if (index < 0 || index >= games.length) {
            return null;
        }

        return games[index];
    }

}
